Fix syntax.h bug introduced by recent INLINE change.
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 22 Sep 2013 06:22:05 +0000 (23:22 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 22 Sep 2013 06:22:05 +0000 (23:22 -0700)
commita9f769679393b9979af1a0eea4b4c89b05e4ebad
tree9bd69427b83900a002aa0b9008bdd240a04d43f4
parent269fc57c8328fddf6fca66c8a1760e85c4b94e8f
Fix syntax.h bug introduced by recent INLINE change.

syntax.h defined an extern inline function SYNTAX_ENTRY that was
conditionally compiled one way in some modules, and a different
way in others.  This doesn't work with extern inline functions,
which must have the same definition in all modules, because the
defining code might be shared across modules, depending on the
implementation.  Symptoms reported by Martin Rudalics in:
http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00414.html
* regex.c, syntax.c (SYNTAX_ENTRY_VIA_PROPERTY): Remove.
(SYNTAX, SYNTAX_ENTRY, SYNTAX_WITH_FLAGS): New macros,
overriding the corresponding functions in syntax.h.
* syntax.h (syntax_property_entry, syntax_property_with_flags)
(syntax_property): New inline functions.
(SYNTAX_ENTRY, SYNTAX_WITH_FLAGS, SYNTAX):
Rewrite in terms of these new functions.
src/ChangeLog
src/regex.c
src/syntax.c
src/syntax.h